package main

import (
	"fmt"
	"reflect"
)

func main() {
	//空接口可以存储任意类型的数据， 空接口类型数据无法计算比如下面代码
	var i interface{} = 12
	var j interface{} = 34
	//fmt.Println(i + j)

	//可以通过反射获取值 然后进行计算

	//TODO:反射获取类型
	i1 := reflect.TypeOf(i)
	j1 := reflect.TypeOf(j)
	//判断两个对象的类型（Type）是否相同
	if i1 == j1 {
		//TODO:反射获取值
		i1value := reflect.ValueOf(i).Int()
		j1value := reflect.ValueOf(j).Int()
		fmt.Println(i1value + j1value)
	}

}
